1. Field of the Invention
The present invention relates to an information processing device that verifies as needed a computer program stored in a memory to restrict the operation of the computer program for a case in which the computer program is found to be tampered with. Specifically, the present invention relates to a gaming machine that detects tampering of contents of the memory, which has been made while a gaming program is in operation, so as to restrict the operation of the gaming program.
2. Related Art
Conventionally, computer programs for verifying a gaming program of a gaming machine have been known. These computer programs for the gaming machine are written to describe processing for verifying a gaming program and a game system program (see Japanese Unexamined Patent Application, First Publication No. 2007-125297).
In addition, a gaming machine is known by U.S. Patent Application Publication No. 2006/0240888. A gaming machine includes: a card slot for a memory card storing gaming information; a gaming board including a ROM storing a verification program for verifying the gaming information and a preliminary verification program for verifying the verification program itself; and a motherboard including a RAM. The gaming machine verifies gaming information by the verification program that is stored in the RAM on the motherboard after the completion of the verification performed for the verification program by the preliminary verification program.
In the conventional methods for verifying gaming machines, a verification program executed by a CPU of a gaming machine scans the entire contents of a main memory, thus verifying the gaming machine. The verification includes steps of: verifying consistency of contents between an external memory and the main memory at a time of loading of a computer program from the external memory to the main memory; and performing continuous verification of the maintenance of the initial contents of the computer program loaded to the main memory.
However, in recent operating systems a method called dynamic memory allocation is adopted, in which a kernel, a basic portion of an operating system, allocates a main memory having discontinuous addresses to a single program. Although, the method brings advantages that a number of computer programs can be executed in parallel and in random order, it does not allow the main memory having continuous addresses to be read and verified as the conventional method.